1. Field of the Invention
This invention generally relates to spread spectrum communications systems and, more particularly, to a low-power signal processing architecture and method for spread spectrum receivers.
2. Background Description
Spread spectrum communication is advantageous in communication applications requiring high reliability in a noisy environment. Often the dominant noise is man-made interference, either intentional or accidental. In a specific application the communication environment may include many potential reflectors, giving rise to severe multi-path interference. Such multi-path interference typically insinuates deep nulls in the form of frequency selective fading. Spread spectrum communications is an excellent countermeasure to these difficulties.
There are several types of spread spectrum systems including direct sequence spread spectrum systems, frequency hopping systems, time hopping systems, pulse frequency modulated (or chirp) systems, and various hybrids. Of these, the direct sequence spread spectrum (DSSS) systems and frequency hopping systems are perhaps the more widely implemented. The following discussion is focused on binary DSSS systems.
In binary DSSS communication, a wide band carrier signal is modulated by a narrow band message signal. The wide-band carrier is typically generated by bi-phase modulating a single frequency carrier using a binary pseudo-random noise (P/N) code sequence. The P/N code is often generated using one or more high speed shift registers, each having modulo-two feedback according to a primitive polynomial. The generated high-speed P/N code is then applied to a balanced modulator (multiplier) whose other input signal is the narrow band carrier. The output signal of the balanced modulator is a wide-band signal often referred to as a "wide-band carrier". To communicate data, the wide-band carrier is bi-phase modulated by a binary message data stream. The message data rate is usually much lower than the P/N-code symbol or "chip" rate, and the data and code-chip edges are usually synchronized. The ability of the DSSS technique to suppress interference is directly proportional to the ratio of the code-chip rate to the data rate. In many applications, there are thousands of code chips per message bit.
A DSSS signal can be received by first shifting the signal down to baseband by multiplying it with a locally generated replica of the original narrow-band carrier (e.g., a properly tuned local oscillator). If the frequency (and phase) of the carrier replica is the same as that of the received original narrow-band carrier, then the multiplier output signal will be a bipolar "wide-band data" stream that is the product of the bipolar P/N code and message-data sequences. The P/N code is then removed by multiplying the wide-band data stream with a locally generated replica of the P/N code that is time aligned with the received P/N code. This is the data de-spreading process and yields the original message data stream at the multiplier output.
In the data de-spreading process, the wide-band data power spectrum is refocused into the original narrower data bandwidth, raising the data power level well above the background noise in that bandwidth. The amount that the power level is raised is the so called processing gain and is directly proportional to the ratio of the code rate to the data rate. Furthermore, any received narrow-band interference is spread by the code-replica modulation, and this greatly reduces the interference power level in the data band.
An often difficult task associated with DSSS signal reception is that of generating the carrier replica with both proper carrier frequency and phase and generating the P/N code replica at the proper rate and with proper time alignment (offset). In many DSSS communication systems, the necessary carrier frequency, carrier phase, and P/N code offset are not known a priori at the receiver and these parameters must be determined by trying different values until a large signal is observed at the data-filter output. This is known as the search or acquisition process, and a DSSS signal is said to be acquired when the proper frequency, phase, and code offset have been determined.
In many DSSS applications, the DSSS signal levels are well below the background noise and/or interference levels and are not detectable until properly de-spread and low-pass filtered. When the received signal-to-noise ratio (SNR) is very low, the filter must be very narrow to achieve the processing gain needed for signal detection and acquisition. Because a narrow filter requires a long integration period, the result of multiplying many received P/N code samples by the corresponding replica P/N code samples must be accumulated before the detection decision can be made. This multiplication and accumulation is a cross correlation between the received and replica P/N code sequences, and the sequences may have to be long for low SNR signals.
Use of the DSSS method enables multiple users to simultaneously share the same wide-band channel using the code-division multiple access (CDMA) technique. With this technique, each transmitter utilizes a different P/N code such that the cross correlation between different codes is substantially zero. A receiver selects and detects a particular transmitted signal by choosing the appropriate P/N code and performing the acquisition search. In some cases, it is unknown which transmitter may be transmitting and the acquisition search must include examination of different PIN codes from a known list. When many different codes, code offsets and carrier frequencies must be examined and the SNR is low, the acquisition task can be both time and energy consuming. An important aspect of the present invention is the reduction of the time and energy consumed in the DSSS signal acquisition process.
A description of direct sequence and other types of spread spectrum communications systems may be found, for example, in Spread Spectrum Systems, 3.sup.rd Ed., by Robert C. Dixon, John Wiley & Sons (1994), and Spread Spectrum Communications, Vol. II, by M. K. Simon et al., Computer Science Press (1985). A description of CDMA techniques may be found, for example, in CDMA Principles of Spread Spectrum Communication, by Andrew J. Viterbi, Addison-Wesley (1995).
The popular and ubiquitous Global-Positioning System signals are an important application of DSSS communications. In recent years, Navstar Global-Positioning System (GPS) satellites have been launched into medium-altitude earth orbits in six orbital planes, each tipped 55.degree. with respect to the equator. The complete GPS satellite constellation comprises twenty-one satellites and several spares. Signals transmitted from these satellites allow a receiver near the ground to accurately determine time and its own position. Each satellite transmits data that provides precise knowledge of the satellite position and allows measurement of the distance from that satellite to the antenna of the user's receiver. With this information from at least four GPS satellites, the user can compute its own position, velocity and time parameters through known triangulation techniques (i.e., the navigation solution). Typically, seven, but a minimum of four, satellites are observable by a user anywhere on or near the earth's surface if the user's receiver has an unobstructed view of the sky, down to very near the horizon. Each satellite transmits signals on two frequencies known as L1 (1575.42 MHz) and L2 (1227.6 MHz), and all satellites share these frequencies using the CDMA DSSS techniques described earlier.
More particularly, each satellite transmits a single high-resolution DSSS signal on frequency L2 and the same signal plus another lower-resolution DSSS signal on frequency L1. The low-resolution DSSS signal comprises a P/N code with a 1.023 MHZ chipping rate and a 1.0 ms repetition period, and a message data sequence (the NAV data) with a rate of 50 bits per second. The high-resolution DSSS signal uses a P/N code with a 10.23 MHz chipping rate and a repetition period longer than a week. The same NAV data stream is used in all DSSS signals from a given satellite. The NAV message from a given satellite contains the GPS signal transmission time, ephemeris (position) data for that satellite, almanac data (a reduced accuracy ephemeris) for all of the satellites in the constellation, and a hand-over word used in connection with the transition from low-resolution to high-resolution code tracking. The low and high-resolution codes are known as the course/acquisition (C/A) and precise (P) codes, respectively.
After acquisition, the offset of each code, together with the signal-transmission time from the NAV data, enables a receiver to determine the range between the corresponding satellite and the user. By including both the P code and the repeating C/A code in the transmitted signal, a more-rapid hierarchical acquisition of the P code is made possible and a two tiered level of global navigation service can be provided. The P code can provide positions that are accurate to approximately 3 meters, while the C/A code yields accuracies on the order of 30 meters. Typically, the low-resolution service is unrestricted while the high-resolution service is restricted to the military by encrypting or otherwise controlling knowledge of the high-resolution P/N code.
In a typical military receiver, the C/A code is acquired first. Then the hand-over word is read from the NAV data stream. The hand-over word specifies the approximate offset of the P code relative to GPS time (as transmitted in the time stamp), and its use will dramatically reduce the number of different code offsets that must be searched during the P code acquisition. Acquisition of the C/A code is substantially easier than direct acquisition of the P code because the C/A code repeats every 1.0 ms and there are, therefore, only 1023 different code offsets to search (twice this if the search is performed in the usual half-chip steps).
Received GPS signals are usually shifted in frequency from the nominal L1 and L2 carrier frequencies because the GPS satellites move in orbit at several kilometers per second, yielding a substantial Doppler shift. The satellite trajectories are usually known a priori and the Doppler shifted carrier frequencies are therefore predictable if the GPS receiver location is known. Unfortunately, the receiver location is not known a priori, and there is often substantial local oscillator error with inexpensive receivers. The resulting uncertainty in received carrier frequency (i.e., in needed replica carrier frequency) can be large (e.g., .+-.7.5 kHz), and this frequency range may have to be searched during the GPS signal-acquisition process. The frequency or Doppler search is usually done by repeating the cross correlation of the received sample and local replica P/N sequences for different local oscillator (carrier replica) frequencies. The spacing between frequency steps is made small enough to avoid missing the signal when long cross-correlation integration times (narrow filter bandwidths) are used. Long integration times improve detection of low SNR signals. With typical civilian GPS applications, 1.0 millisecond cross-correlation integrations are used (a single C/A code cycle), yielding an equivalent Doppler filter bandwidth of approximately 500 Hz. A .+-.7.5 kHz frequency range can be searched with thirty 500 Hz steps. The GPS acquisition then entails a search over satellite code, code offset, and Doppler frequency.
A master control station (MCS) and a number of monitor stations comprise the control portion of the GPS system. The monitor stations passively track all GPS satellites in view, collecting ranging data and satellite clock data from each satellite. This information is passed to the MCS where the satellites' future ephemeris and clock drift are predicted. Updated ephemeris and clock data are uploaded to each satellite for re-transmission in each satellite's NAV message.
In operation, a typical GPS receiver performs the following for each of at least four satellite signals:
1) acquires the DSSS signal, PA1 2) synchronizes with the NAV data stream and reads the satellite time-stamp, clock-correction, ionospheric-delay and ephemeris data, PA1 3) calculates the satellite position from the ephemeris data, PA1 4) reads its own receiver clock to determine the receiver time associated with the reception of the time-stamp epoch, and PA1 5) estimates the signal travel time by subtracting the time-stamp value from the associated receiver time.
This time difference is multiplied by the speed of light to obtain an estimated range to the satellite. If the GPS receiver had a clock that was perfectly synchronized with the clocks of the satellites (or the error was known), only three such range estimates would be required to precisely locate the receiver. There is, however, a clock-bias (slowly changing error) due the fact that GPS receivers typically use inexpensive crystal clocks, whereas the satellites are equipped with atomic clocks. This clock bias is learned and its effect eliminated by measuring the range (travel time) from four GPS satellites and using these measurements in a system of four equations with four unknowns (receiver x, y, and z, and time). For general information on GPS, the reader is referred to the book by Tom Logsdon entitled The Navstar Global Positioning System, by Van Nostrand Reinhold (1992).
A preferred application of the present invention is the locating and tracking of assets such as rail cars, shipping or cargo containers, trucks, truck trailers, and the like, using the GPS. In this application, the GPS receivers are usually battery powered since an independent source of power is generally not available. It is advantageous to increase the operating life of the batteries by reducing energy consumed by the GPS receiver.
In a typical spread spectrum receiver, the receiver front end (i.e., RF and IF electronics) consumes a large amount of power while it is turned on. This results in high energy consumption if the signal acquisition and synchronization take a long time. Most prior-art GPS receivers do not have signal storage (memory) and must process the received signals in real time. Furthermore, they use either a sequential search or search a small number of satellite/code-offset/Doppler (SCD) bins simultaneously to achieve signal acquisition. Such receivers must continually receive and process each satellite signal until its SCD bin is identified and the necessary NAV data is decoded. With a sequential search the energy consumption is high because substantial time is elapsed before the SCD bin associated with each GPS signal is identified. Alternatively, multiple SCD bins can be searched in parallel to reduce the elapsed time, but the energy consumption is still high because the existing processing methods are not very low power methods. Furthermore, the degree of parallelism is very limited with existing processing methods due to the large amount of circuitry involved.
In one system of the invention, a central facility or station must track multiple assets (e.g., railcars). Each tracked object carries a GPS receiver that processes data from several of the visible GPS satellites; however, an accurate position determination is not made at the receiver. Instead, only partial processing is done at the receiver and intermediate results are transmitted from the asset to the central station. These intermediate results do not require decoding of navigational or other data from the GPS signals. This system thus allows the GPS receiver and signal processor to be powered only long enough to acquire the satellite signals (determine the SCD bins). With this system, the dominant energy consumer is the acquisition process, and the GPS receiver energy used at each tracked asset will be dramatically reduced if the signal acquisition time and energy are dramatically reduced.
U.S. Pat. No. 5,420,593 to Niles uses a memory to store an interval of the received signal containing multiple GPS satellite signals. The received signal is sampled and written into the memory at one rate and then read from the memory at another, faster rate. Upon reading, the signal is digitally processed to acquire and synchronize with the received GPS satellite signals. This allows a shorter elapsed time for the acquisition of the GPS signals. However, the receiver is not turned off immediately after signal storage, and low-power signal acquisition is not used. Furthermore, substantially reduced energy consumption is not achieved.
U.S. Pat. No. 5,225,842 to Brown describes a GPS based centralized asset tracking system that reduces the cost of the GPS receivers on each tracked asset by avoiding calculation of the navigation solution at the asset. Each asset carries a GPS receiver that processes the signal from several of the visible GPS satellites and relays the processed result to the central station where accurate asset navigation solutions are calculated. This system does not substantially reduce the energy consumed by the GPS receiver at the asset and does not substantially extend asset battery life or reduce time between service to replace batteries. Furthermore, low-power parallel correlation is not used.